HPVM: A Portable Virtual Instruction Set for Heterogeneous Parallel Systems
نویسندگان
چکیده
We describe a programming abstraction for heterogeneous parallel hardware, designed to capture a wide range of popular parallel hardware, including GPUs, vector instruction sets and multicore CPUs. Our abstraction, which we call HPVM , is a hierarchical dataflow graph with shared memory and vector instructions. We use HPVM to define both a virtual instruction set (ISA) and also a compiler intermediate representation (IR). The virtual ISA aims to achieve both functional portability and performance portability across heterogeneous systems, while the compiler IR aims to enable effective code generation and optimization for such systems. HPVM effectively supports all forms of parallelism used to achieve computational speedups (as opposed to concurrency), including task parallelism, coarse-grain data parallelism, finegrain data parallelism, and pipelined parallelism. HPVM also enables flexible scheduling and tiling: different nodes in the dataflow graph can be mapped flexibly to different combinations of compute units, and the graph hierarchy expresses memory tiling, essential for achieving high performance on GPU and CPU targets.
منابع مشابه
Virtual Instruction Set Computing for Heterogeneous Systems
Developing software applications for emerging and future heterogeneous systems with diverse combinations of hardware is significantly harder than for homogeneous multicore systems. In this paper, we identify three root causes that underlie the programming challenges: (1) diverse parallelism models; (2) diverse memory architectures; and (3) diverse hardware instruction set semantics. We believe ...
متن کاملPerformance Enhancements for HPVM in Multi-Network and Heterogeneous Hardware
The Concurrent Systems Architecture Group (CSAG) has been investigating high-performance clustering of commodity PCs with gigabit interconnects and a commodity OS (Windows NT). This paper describes several of the major enhancements in the latest release of HPVM 1.9 (High Performance Virtual Machine). The first two of these are concurrent support of multiple gigabit fabrics and shared memory tra...
متن کاملParallel computing using MPI and OpenMP on self-configured platform, UMZHPC.
Parallel computing is a topic of interest for a broad scientific community since it facilitates many time-consuming algorithms in different application domains.In this paper, we introduce a novel platform for parallel computing by using MPI and OpenMP programming languages based on set of networked PCs. UMZHPC is a free Linux-based parallel computing infrastructure that has been developed to cr...
متن کاملStochastic Comparisons of Series and Parallel Systems with Heterogeneous Extended Generalized Exponential Components
In this paper, we discuss the usual stochastic‎, ‎likelihood ratio, ‎dispersive and convex transform order between two parallel systems with independent heterogeneous extended generalized exponential components. ‎We also establish the usual stochastic order between series systems from two independent heterogeneous extended generalized exponential samples. ‎Finally, ‎we f...
متن کاملAccelerator Exoskeleton
To maximize performance and power efficiency, future multi-core architectures may be heterogeneous, incorporating some accelerator cores alongside the IA cores. Accelerator Exoskeletons provide a shared virtual memory heterogeneous multi-threaded programming paradigm for these accelerators using novel CPU instruction set extensions and software tool chains with an Intel Architecture (IA) look-n...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره abs/1611.00860 شماره
صفحات -
تاریخ انتشار 2016